<html>
   <head>
      <link rel="stylesheet" type="text/css" href="style.css" />
   </head>
   <body onload="">
<h2 class="comptitle">Simple Module <i>GlobalNodeList</i></h2>
<b>Package:</b> oversim.common<br/><b>File: <a href="src-common-GlobalNodeList.ned.html">src/common/GlobalNodeList.ned</a></b><br/><p><a href="../doxy/classGlobalNodeList.html" target="mainframe"><b>C++ definition</b></a></p>

<p>Global module that supports bootstrap process and key distribution</p>
<img src="oversim.common.GlobalNodeList-type.png" ismap="yes" usemap="#type-diagram"/><map name="type-diagram">
<area shape="rect" href="oversim.common.GlobalNodeList.html" title="GlobalNodeList" alt="GlobalNodeList" coords="0,0,133,40">
</map>
<h3 class="subtitle">Usage diagram:</h3>
<p>The following diagram shows usage relationships between types.
Unresolved types are missing from the diagram.
Click <a href="full-ned-usage-diagram.html">here</a> to see the full picture.</p>
<img src="oversim.common.GlobalNodeList-usage.png" ismap="yes" usemap="#usage-diagram"/><map name="usage-diagram"><area shape="rect" id="node1" href="oversim.common.GlobalNodeList.html" title="Simple Module GlobalNodeList" alt="" coords="7,83,116,111">
<area shape="rect" id="node2" href="oversim.common.GlobalObserver.html" title="Compound Module GlobalObserver" alt="" coords="5,6,117,34">
</map>
<h3 class="subtitle">Inheritance diagram:</h3>
<p>The following diagram shows inheritance relationships for this type.
Unresolved types are missing from the diagram.
Click <a href="full-ned-inheritance-diagram.html">here</a> to see the full picture.</p>
<img src="oversim.common.GlobalNodeList-inheritance.png" ismap="yes" usemap="#inheritance-diagram"/><map name="inheritance-diagram"><area shape="rect" id="node1" href="oversim.common.GlobalNodeList.html" title="Simple Module GlobalNodeList" alt="" coords="5,6,115,34">
</map>
<h3 class="subtitle">Used in compound modules:</h3>
<p>If a module type shows up more than once, that means it has been defined in more than one NED file.</p>
<table>
<tr>
   <td>
      <a href="oversim.common.GlobalObserver.html">GlobalObserver</a>
      <i> (compound&nbsp;module)</i>
   </td>
   <td>

<p>global module that contains the globalNodeList and the globalStatistics module</p>
   </td>
</tr>
</table>
<h3 class="subtitle">Parameters:</h3>
<table class="paramtable">
   <tr>
      <th>Name</th>
      <th>Type</th>
      <th>Default value</th>
      <th>Description</th>
   </tr>
<tr class="local">
   <td width="150">maliciousNodeProbability</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>probability for a node to be malicious on creation</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChange</td>
   <td width="100">
      <i>bool</i>
   </td>
   <td width="120"></td>
   <td>
<p>dynamically change number of malicious nodes</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChangeStartTime</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>simTime at which nodes begin to become malicious</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChangeRate</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>number of nodes to change to malicious compared to all nodes</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChangeInterval</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>time between two node changes to malicious</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChangeStartValue</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>minimum amount of malicious nodes in the peerSet</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maliciousNodeChangeStopValue</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>maximum amount of malicious nodes in the peerSet</p>
   </td>
</tr>
<tr class="local">
   <td width="150">maxNumberOfKeys</td>
   <td width="100">
      <i>int</i>
   </td>
   <td width="120"></td>
   <td>
<p>maximum number of overlay keys the bootstrap oracle handles</p>
   </td>
</tr>
<tr class="local">
   <td width="150">keyProbability</td>
   <td width="100">
      <i>double</i>
   </td>
   <td width="120"></td>
   <td>
<p>probability of keys to be owned by nodes</p>
   </td>
</tr>
</table>
<h3 class="subtitle">Properties:</h3>
<table class="paramtable">
   <tr>
      <th>Name</th>
      <th>Value</th>
      <th>Description</th>
   </tr>
<tr>
   <td width="150">display</td>
   <td width="100"><i>i=block/control</i></td>
   <td></td>
</tr>
</table>
<h3 class="subtitle">Source code:</h3>
<pre class="src"><span style="color: #808080; font-style: italic; ">//
// Global module that supports bootstrap process and key distribution
//
</span><span style="color: #800000; font-weight: bold; ">simple</span><span style="color: #000000; "> </span><span style="color: #000000; ">GlobalNodeList</span><span style="color: #000000; ">
{
    </span><span style="color: #800000; font-weight: bold; ">parameters</span><span style="color: #000000; ">:
        </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeProbability</span><span style="color: #000000; ">;              </span><span style="color: #808080; font-style: italic; ">// probability for a node to be malicious on creation
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">bool</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChange</span><span style="color: #000000; ">;                     </span><span style="color: #808080; font-style: italic; ">// dynamically change number of malicious nodes
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChangeStartTime</span><span style="color: #000000; "> </span><span style="color: #000000; font-weight: bold; ">@unit</span><span style="color: #000000; ">(</span><span style="color: #000000; ">s</span><span style="color: #000000; ">); </span><span style="color: #808080; font-style: italic; ">// simTime at which nodes begin to become malicious
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">volatile</span><span style="color: #000000; "> </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChangeRate</span><span style="color: #000000; ">;              </span><span style="color: #808080; font-style: italic; ">// number of nodes to change to malicious compared to all nodes
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">volatile</span><span style="color: #000000; "> </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChangeInterval</span><span style="color: #000000; "> </span><span style="color: #000000; font-weight: bold; ">@unit</span><span style="color: #000000; ">(</span><span style="color: #000000; ">s</span><span style="color: #000000; ">); </span><span style="color: #808080; font-style: italic; ">// time between two node changes to malicious
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">volatile</span><span style="color: #000000; "> </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChangeStartValue</span><span style="color: #000000; ">;        </span><span style="color: #808080; font-style: italic; ">// minimum amount of malicious nodes in the peerSet
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">volatile</span><span style="color: #000000; "> </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">maliciousNodeChangeStopValue</span><span style="color: #000000; ">;         </span><span style="color: #808080; font-style: italic; ">// maximum amount of malicious nodes in the peerSet
</span><span style="color: #000000; ">
        </span><span style="color: #000080; font-weight: bold; ">int</span><span style="color: #000000; "> </span><span style="color: #000000; ">maxNumberOfKeys</span><span style="color: #000000; ">;             </span><span style="color: #808080; font-style: italic; ">// maximum number of overlay keys the bootstrap oracle handles
</span><span style="color: #000000; ">        </span><span style="color: #000080; font-weight: bold; ">double</span><span style="color: #000000; "> </span><span style="color: #000000; ">keyProbability</span><span style="color: #000000; ">;           </span><span style="color: #808080; font-style: italic; ">// probability of keys to be owned by nodes
</span><span style="color: #000000; ">        </span><span style="color: #000000; font-weight: bold; ">@display</span><span style="color: #000000; ">(</span><span style="color: #008000; ">&quot;i=block/control&quot;</span><span style="color: #000000; ">);
}
</span></pre>
   <hr><p class="footer"><a href="http://creativecommons.org/licenses/by-sa/3.0" target="_top"><img src="by-sa.png"></a> This documentation is released under the <a href="http://creativecommons.org/licenses/by-sa/3.0" target="_top">Creative Commons license</a></p>
   </body>
</html>
